; Improve documentation of "function types"
authorEli Zaretskii <eliz@gnu.org>
Tue, 25 Mar 2025 12:37:17 +0000 (14:37 +0200)
committerEli Zaretskii <eliz@gnu.org>
Tue, 25 Mar 2025 12:37:17 +0000 (14:37 +0200)
* doc/lispref/functions.texi (Declare Form):
* doc/lispref/objects.texi (Type Specifiers): Improve wording and
indexing.

doc/lispref/functions.texi
doc/lispref/objects.texi

index 1da5208065ef855ede078d716a56bbe5164c72f2..824db5a0ec8b0be4f1afda0d0f9c98164bbdb900 100644 (file)
@@ -2727,12 +2727,15 @@ for the code emitted for the function (@pxref{Native-Compilation
 Variables}).
 
 @cindex function type declaration
+@cindex inferred type of function
 @item (ftype @var{type} &optional @var{function})
 Declare @var{type} to be the type of this function.  This is used for
 documentation by @code{describe-function}.  Also it can be used by the
 native compiler (@pxref{Native Compilation}) for improving code
 generation and for deriving more precisely the type of other functions
-without type declaration.
+without type declaration.  Functions that have such type declarations
+will be shown by @kbd{C-h C-f} as having a @dfn{declared type} (as
+opposed to @dfn{inferred type} of functions without declaration).
 
 @var{type} is a @dfn{type specifier} (@pxref{Type Specifiers}) in the
 form @w{@code{(function (@var{arg-1-type} @dots{} @var{arg-n-type})
index 630765213a2889f56aed64aea021763aec496320..264a780f93d5b0619783ddf761b0740c1408b636 100644 (file)
@@ -1552,9 +1552,9 @@ types and the return type of a function.  Argument types can be interleaved
 with symbols @code{&optional} and @code{&rest} to match the function's
 arguments (@pxref{Argument List}).
 
-The type specifier represent a function whose first parameter is of type
-@code{symbol}, the second optional parameter is of type @code{float},
-and which returns an @code{integer}:
+The following type specifier represents a function whose first parameter
+is of type @code{symbol}, the second optional parameter is of type
+@code{float}, and which returns an @code{integer}:
 
 @example
  (function (symbol &optional float) integer)